大家好呀,過了一年,這一年我的生活過得蠻精彩的,也有考上理想的研究所(灑花)。也希望各位在自己的道路上都順順利利的。今年我想接續討論去年最後一天結語提到的最佳化演算法,這個方法在最佳化模型通常會帶來一些幫助。除此之外最佳化演算法在很多應用中都能夠見到他的身影。
以下是今年度這系列30天預計會討論的內容~
這系列文章分為四個階段:
第一階段:最佳化演算法入門
D1:懶得動手調參數,用最佳化演算法自動訓練AI模型吧!
D2:最佳化演算法的5W1H
D3:當今的最佳化手段有甚麼?
第二階段:淺談最佳化演算法
D4:最佳化演算法介紹,流程等,特點 例如用於全局最佳或者局部最佳等等
D5:如何知道最佳化演算法的優劣?測試函數介紹
D6:定義測試函數 (1/3)
D7:定義測試函數 (2/3)
D8:定義測試函數 (3/3)
D9:最佳化演算法函式庫介紹—Optuna、MealPy、NiaPy
D10:swarm-based演算法(ABC、PSO etc.)
D11:進化基礎的演算法(GA、ES)
D12:生物基礎的演算法(待新增)
D13:人類基礎的演算法(待新增)
第三階段:介紹Optuna模組(7days)
D14:[Day 14]無痛入門!淺談Optuna最佳化
D15:由淺入深!介紹更多Optuna的API (1/2)
D16:由淺入深!介紹更多Optuna的API (2/2)
D17:打鐵趁熱!來試著使用Optuna解決問題吧
D18:Optuna的背後演算法,TPE介紹
D19:最佳化MLP、CNN
D20:最佳化GAN
D21:最佳化GAN
第四階段:介紹MealPy模組(7days)
D22:淺談MealPy進行測試函數最佳化
D23:基礎與舉例,用testing function測試最佳化過程
D24:進階API (停止條件等)
D25:視覺化、儲存模型、儲存最佳化過程
D26:最佳化MLP
D27:最佳化CNN
D28:最佳化GAN
D29:最佳化GAN
D30:其他深度學習網路最佳化應用。YOLO、keras內建最佳化、最佳化算法取代梯度下降與參數更新等。
D31:總結
如果你是在做AI模型而且調整超參數調整到懷疑人生的苦主,那恭喜你,這系列的文章應該會很適合你。如果你是做其他應用例如尋找最短路徑、尋找最小成本的線性規劃問題等的最佳化問題,這篇文章或許沒辦法百分之百的適合你,但希望你可以從中獲得一些收穫。
若你看到數學會暈頭轉向,那你可以著重於這系列介紹程式的部分,今年的系列文章會著重於程式的撰寫,並輔以「億」點點的數學理論(不會很多,請放心食用)。希望各位能從這系列最佳化的系列文得到新的調參技能!
俗話說:一位成功的人士背後一定會有一條脊椎XD,那我相信一個成功的深度學習模型背後應該也少不了模型最佳化。而模型最佳化也時常會使用最佳化演算法,或是超級考驗耐心的手動調整,不過部分情況會是兩個都用,確保模型的品質。明天我會來介紹最佳化算法的5W1H,讓各位可以更清楚實務上訓練模型通常會如何搭配最佳化演算法!
目前我正被研究所生活壓著打TT,希望能順利完賽囉!